Compiling Abstract State Machines to C++

نویسنده

  • Joachim Schmid
چکیده

Abstract State Machines (ASMs) have been widely used to specify software and hardware systems. Only a few of these specifications are executable, although there are several interpreters and some compilers. This paper introduces a compilation scheme to transform an ASM specification in the syntax of the ASM-Workbench into C++. In particular, we transform algebraic types, pattern matching, functional expressions, dynamic functions, and simultaneous updates to C++ code. The main aim of this compilation scheme is to preserve the specification structure in the generated code without generating inefficient code. The implemented compiler was used successfully in the industrial FALKO application at Siemens Corporate Technology.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Compiling Abstract State Machines

Abstract State Machines (ASMs) have been widely used to specify software and hardware systems. Only a few of these specifications are executable, although there are several interpreters and some compilers. This paper introduces a compilation scheme to transform an ASM specification in the syntax of the ASM-Workbench into C++. In particular, we transform algebraic types, pattern matching, functi...

متن کامل

The abstract state machines method for modular design and analysis of programming languages

We survey the use of Abstract State Machines in the area of programming languages, namely to define behavioral properties of programs at source, intermediate and machine levels in a way that is amenable to mathematical and experimental analysis by practitioners, like correctness and completeness of compilers, etc. We illustrate how theorems about such properties can be integrated into a modular...

متن کامل

Veri cation of Compilers

We report about a joint project of the universities at Karls-ruhe, Kiel and Ulm on how to get correct compilers for realistic programming languages. Arguing about compiler correctness must start from a compiling speciication describing the correspondence of source and target language in formal terms. We have chosen to use abstract state machines to formalize this correspondence. This allows us ...

متن کامل

The Complexity of Abstract Machines

Machines Glossary. • An abstract machine M is given by states, noted s, and transitions between them, noted ; • A state is given by the code under evaluation plus some data-structures to implement search and substitution, and to take care of names; • The code under evaluation, as well as the other pieces of code scattered in the data-structures, are λ -terms not considered modulo α-equivalence;...

متن کامل

ASM Semantics for C++ 2.0

The Abstract State Machines (ASMs) theory has been applied to formalize the semantics of the C♯ programming language in a rigorous mathematical manner. We have extended the C♯ ASM model in order to handle C♯ 2.0 specific features like generics, anonymous methods and iterator blocks. We discovered that the existing operational model (the dynamic semantics) can be reused entirely. It is not alter...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:
  • J. UCS

دوره 7  شماره 

صفحات  -

تاریخ انتشار 2001